package model;

import persistencia.FabricaIntermediarios;
import persistencia.FachadaInternaPersistencia;
import persistencia.IntermediarioPersistencia;
import persistencia.ObjectoPersistente;
import persistencia.TipoEntidad;


public class AgenteAlumno extends ObjectoPersistente implements Alumno{
	private Alumno alumno;
	private Long idUniversidad;
	private Long idCarrera;
	
	public AgenteAlumno (Alumno a){
		alumno = a;
	}
	
	public Long getIdCarrera() {
		return idCarrera;
	}
	public void setIdCarrera(Long idCarrera) {
		this.idCarrera = idCarrera;
	}
	public Long getIdUniversidad() {
		return idUniversidad;
	}

	public void setIdUniversidad(Long idUniversidad) {
		this.idUniversidad = idUniversidad;
	}


	@Override
	public Universidad getUniversidad() {
		if(alumno.getUniversidad()==null){
			Universidad u = (Universidad) FachadaInternaPersistencia.getInstance().buscarPorID(TipoEntidad.UNIVERSIDAD, idUniversidad);
			alumno.setUniversidad(u);
		}
		return alumno.getUniversidad();
	}
	
	@Override
	public void setUniversidad(Universidad universidad) {
		alumno.setUniversidad(universidad);
	}
	@Override
	public String getNombre() {
		return alumno.getNombre();
	}

	@Override
	public void setNombre(String nombre) {
		alumno.setNombre(nombre);
	}

	@Override
	public String getLegajo() {
		return alumno.getLegajo();
	}

	@Override
	public void setLegajo(String legajo) {
		alumno.setLegajo(legajo);
	}

	@Override
	public String getApellido() {
		return alumno.getApellido();
	}

	@Override
	public void setApellido(String apellido) {
		alumno.setApellido(apellido);
	}

	@Override
	public Integer getCantMateriasAprobadas() {
		return alumno.getCantMateriasAprobadas();
	}

	@Override
	public void setCantMateriasAprobadas(Integer cantMateriasAprobadas) {
		alumno.setCantMateriasAprobadas(cantMateriasAprobadas);
	}

	@Override
	public Integer getCantMateriasRegulares() {
		return alumno.getCantMateriasRegulares();
	}

	@Override
	public void setCantMateriasRegulares(Integer cantMateriasRegulares) {
		alumno.setCantMateriasRegulares(cantMateriasRegulares);
	}

	@Override
	public String getContrasenia() {
		return alumno.getContrasenia();
	}

	@Override
	public void setContrasenia(String contrasenia) {
		alumno.setContrasenia(contrasenia);
	}

	@Override
	public Integer getNumeroDocumento() {
		return alumno.getNumeroDocumento();
	}

	@Override
	public void setNumeroDocumento(Integer numeroDocumento) {
		alumno.setNumeroDocumento(numeroDocumento);
	}

	@Override
	public String getMail() {
		return alumno.getMail();
	}

	@Override
	public void setMail(String mail) {
		alumno.setMail(mail);
	}

	public boolean getEsRegular() {
		return alumno.getEsRegular();
	}
	public void setEsRegular(boolean esRegular) {
		alumno.setEsRegular(esRegular);
	}

	@Override
	public String getTelefono() {
		return alumno.getTelefono();
	}

	@Override
	public void setTelefono(String telefono) {
		alumno.setTelefono(telefono);
	}

	@Override
	public Carrera getCarrera() {
		return alumno.getCarrera();
	}

	@Override
	public void setCarrera(Carrera carrera) {
		alumno.setCarrera(carrera);
	}

	@Override
	public String getTipoDocumento() {
		return alumno.getTipoDocumento();
	}

	@Override
	public void setTipoDocumento(String tipoDocumento) {
		alumno.setTipoDocumento(tipoDocumento);
	}



}
